/*
 * Copyright (C) 2021 Huawei Device Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.bytedance.scenedemo.extreme_case;

import com.bytedance.scene.Scene;
import com.bytedance.scene.ktx.SceneExtensions;
import com.bytedance.scenedemo.ResourceTable;
import com.bytedance.scenedemo.utility.ColorUtil;
import ohos.aafwk.content.Intent;
import ohos.aafwk.content.IntentParams;
import ohos.agp.components.Component;
import ohos.agp.components.ComponentContainer;
import ohos.agp.components.DirectionalLayout;
import ohos.agp.components.LayoutScatter;
import ohos.agp.components.ScrollView;
import ohos.agp.components.Text;

/**
 * EmptyScene1
 *
 * @since 2021-06-17
 */
public class EmptyScene1 extends Scene {
    private static final int NUMBER5 = 5;

    /**
     * EmptyScene1
     *
     * @param index 下表
     * @return EmptyScene1
     */
    public static EmptyScene1 newInstance(int index) {
        EmptyScene1 emptyScene = new EmptyScene1();
        IntentParams intentParams = new IntentParams();
        intentParams.setParam("value", index);
        intentParams.setParam("type", NUMBER5);
        emptyScene.setArguments(intentParams);
        return emptyScene;
    }

    /**
     * onCreateView
     *
     * @param scatter scatter
     * @param container container
     * @param intent intent
     * @return Component
     */
    @Override
    public Component onCreateView(LayoutScatter scatter, ComponentContainer container, Intent intent) {
        Component layout = scatter.parse(ResourceTable.Layout_empty_scene, container, false);
        Text textHint = (Text) layout.findComponentById(ResourceTable.Id_text_empty_hint);
        DirectionalLayout emptyScene = (DirectionalLayout) layout.findComponentById(ResourceTable.Id_emptyscene1);
        ScrollView svMain = (ScrollView) layout.findComponentById(ResourceTable.Id_sv_push_pop_basic_usage_main);
        textHint.setText(SceneExtensions.getNavigationScene(this).getStackHistory());
        int value = 0;
        int type = 0;
        if (getArguments() != null) {
            value = (int) getArguments().getParam("value");
            type = (int) getArguments().getParam("type");
        }
        svMain.setBackground(ColorUtil.getMaterialColor(value));
        if (type == NUMBER5) {
            emptyScene.setVisibility(Component.HIDE);
        }
        return layout;
    }
}
